#pragma once

#include "widget.h"
class DLL_EXP CGhostWidget :
	public CWidget
{
public:
	CWidget* m_pAttachedWidget;
	CGhostWidget(void);
	~CGhostWidget(void);
	int m_nDistanceWithReal;
	int m_nMirrorPos;
	bool m_bMirror;
	bool m_bHori;
	CEgBitmap* m_pCachedBmp;
	bool m_bEnableCache;
	void SetCachedBmp(CEgBitmap* bmp);
	void SetMyRect();
	void SetMirrorPos(int pos)
	{
		m_nMirrorPos=pos;
		m_bMirror=true;
	}
	void SetDistance(int nDis)
	{
		m_nDistanceWithReal=nDis;
	}
	int GetDistance()
	{
		return this->m_nDistanceWithReal;
	}

	virtual int CustDraw(CFrameSurface* pSurface);
	virtual void AttachWidget(CWidget* pWidget);
	virtual void HandleModelEvent(ModelEvent* pEvent);
};


class DLL_EXP CTiShengWidget :
	public CWidget
{
public:
	CWidget* m_pAttachedWidget;
	CTiShengWidget(void);
	~CTiShengWidget(void);
	void AttachWidget(CWidget* pWidget);
};
